iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 2
0
自我挑戰組

JAVA系列 第 2

關於JAVA的基本特性

  • 分享至 

  • xImage
  •  

JAVA之所以被開發,是要達到以下五個目的:

1.應當使用物件導向程式設計方法學
2.應當允許同一程式在不同的電腦平台執行
3.應當包括內建的對電腦網路的支援
4.應當被設計成安全地執行遠端程式碼
5.應當易於使用,並借鑑以前那些物件導向語言(如C++)的長處。

而JAVA技術主要分成幾個部分:JAVA語言、JAVA執行環境、類別庫。一般我們在說JAVA時並不會是特別指稱哪一部分。

JAVA語言有以下幾種特性:

1.物件導向
JAVA的特點之一是物件導向。「物件導向程式設計語言」就是開發者在設計軟體的時候可以使用自訂的類型和關聯操作,程式碼和資料的集合體叫做「物件」。
一個物件可以想像成繫結了很多「程式碼」和「資料」。物件導向設計讓大型軟體工程的計劃和設計變得更容易管理,能增強程式的健康度,減少工程失敗的數量。

2.跨平台性
這項特性能使我們在使用JAVA語言編譯一段程式碼後,能於任何硬體設施中執行這段程式碼,甚至是不需要任何一點更改。而執行JAVA時需要安裝JAVA 執行時環境(Java Runtime Environment,JRE),否則就無法執行JAVA的程式。
實現跨平台性的方法是大多數編譯器在進行JAVA 語言程式的編碼時候會生成一個用位元組碼寫成的「半成品」,這個「半成品」會在Java虛擬機器(解釋層)的幫助下執行,虛擬機器會把它轉換成目前所處硬體平台的原始程式碼。

3.自動垃圾回收
大多數C++編譯器不支援垃圾收集機制,如果物件是在堆疊上分配的,而程式員又忘記進行刪除,那麼就會造成記憶體洩漏(Memory Leak),這會造成一種現象,程式運行的時候可能會生成很多不清除的垃圾,浪費了不必要的記憶體空間,且若是同一個記憶體位址被刪除兩次的話,程式會變得不穩定,甚至崩潰。
JAVA 語言則不同,上述的情況被自動垃圾收集功能自動處理。物件的建立和放置都是在記憶體堆疊上面進行的。當一個物件沒有任何參照的時候,JAVA 的自動垃圾收集機制就發揮作用,自動刪除這個物件所佔用的空間,釋放記憶體以避免記憶體洩漏。但是記憶體洩漏並不是就此避免了,當程式員疏忽大意地忘記解除一個物件不應該有的參照時,記憶體洩漏仍然不可避免。


上一篇
初步理解JAVA的知識
下一篇
知曉JAVA的一些特性
系列文
JAVA30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言